package JavaSe.IO;

import org.junit.Test;

import java.io.*;

/**
 * @author VX5
 * @Title: MJC
 * @ProjectName interview
 * @Description: TODO
 * @date ${DAT}10:14
 */
public class FileReaderWeiterTest {

    public static void main(String[] args) {
        File file = new File("test1.txt");// 相对地址
        System.out.println(file.getAbsolutePath());
    }


    @Test
    public void testFileWriter() throws Exception{
        //1、提供File类的对象，指明写出的文件
        File file = new File("test1.txt");

        // 2、提供FileWriter的对象，用于数据的写出
        FileWriter fw = new FileWriter(file,false);// 重载如果为true 继续在原文后面添加内容，如果为false 直接刷新原文

        // 3、写出操作
        fw.write("I have a dream".toCharArray());

        // 4、流资源关闭
        fw.close();
    }

    // 复制文件
    public void testFileReaderFileWriter() throws IOException {
        // 1、创建File类的对象，指明读入和写出的文件
        File srcFile = new File("test1.txt");
        File destFile = new File("hello.txt");

        // 创建输入流和输出流的对象
        FileReader fr = new FileReader(srcFile);
        FileWriter fw = new FileWriter(destFile);

        char[] cbuf = new char[5];
        int len;// 记录每次读入到cbuf数组中的字符的个数
        while ((len = fr.read()) != -1){
            // 每次写出len个字符
            fw.write(cbuf,0,len);
        }

        fr.close();
        fw.close();

    }
}
